function ajax (url) {
    return new Promise(function(resolve, reject) {
        var xhr = new XMLHttpRequest()
        xhr.open('GET', url)
        xhr.responseType = 'json'
        xhr.onload = function() {
            if (this.status === 200) {
                resolve(this.response)
            } else {
                reject(new Error(this.statusText))
            }
        }
        xhr.send();
    })
}

// 静态方法
// Promise.resolve('foo')
// // =>
// new Promise(function(resolve, reject) {
//     resolve('foo');
// })

// ajax('/api/xxx')
//     .then(function(res) {

//     },function(error) {

//     })


// const promise = new Promise((resolve, reject) => {
//     console.log(1);
//     resolve()
//     console.log(2)
// })

// promise.then(() => {
//     console.log(3)
// })
// console.log(4)

Promise.resolve(1).then(2).then(Promise.resolve(3)).then(console.log)
// console.log(Promise.resolve(1).then(2).then(console.log))
